package com.topnav.mc.listener.bean;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * @Author: kenny
 * @Date: 2023/10/28 9:13
 */
@Data
public class GbDeviceChannelResult {
    @Schema(description = "数据库自增ID")
    private int id;
    @Schema(description = "通道国标编号")
    private String channelId;
    @Schema(description = "设备国标编号")
    private String deviceId;
    @Schema(description = "名称")
    private String name;
    @Schema(description = "生产厂商")
    private String manufacture;
    @Schema(description = "型号")
    private String model;
    @Schema(description = "设备归属")
    private String owner;
    @Schema(description = "行政区域")
    private String civilCode;
    @Schema(description = "警区")
    private String block;
    @Schema(description = "安装地址")
    private String address;
    @Schema(description = "是否有子设备 1有, 0没有")
    private int parental;
    @Schema(description = "父级id")
    private String parentId;
    @Schema(description = "信令安全模式  缺省为0; 0:不采用; 2: S/MIME签名方式; 3: S/ MIME加密签名同时采用方式; 4:数字摘要方式")
    private int safetyWay;
    @Schema(description = "注册方式 缺省为1;1:符合IETFRFC3261标准的认证注册模 式; 2:基于口令的双向认证注册模式; 3:基于数字证书的双向认证注册模式")
    private int registerWay;
    @Schema(description = "证书序列号")
    private String certNum;
    @Schema(description = "证书有效标识 缺省为0;证书有效标识:0:无效1: 有效")
    private int certifiable;
    @Schema(description = "证书无效原因码")
    private int errCode;
    @Schema(description = "证书终止有效期")
    private String endTime;
    @Schema(description = "保密属性 缺省为0; 0:不涉密, 1:涉密")
    private String secrecy;
    @Schema(description = "IP地址")
    private String ipAddress;
    @Schema(description = "端口号")
    private int port;
    @Schema(description = "密码")
    private String password;
    @Schema(description = "云台类型")
    private int PTZType;
    @Schema(description = "云台类型描述字符串")
    private String PTZTypeText;
    @Schema(description = "创建时间")
    private String createTime;
    @Schema(description = "更新时间")
    private String updateTime;

    /**
     * 在线/离线
     * 1在线,0离线
     * 默认在线
     * 信令:
     * <Status>ON</Status>
     * <Status>OFF</Status>
     * 遇到过NVR下的IPC下发信令可以推流， 但是 Status 响应 OFF
     */
    @Schema(description = "在线/离线， 1在线,0离线")
    private int status;
    @Schema(description = "经度")
    private double longitude;
    @Schema(description = "纬度")
    private double latitude;
    @Schema(description = "GCJ02坐标系经度")
    private double longitudeGcj02;
    @Schema(description = "GCJ02坐标系纬度")
    private double latitudeGcj02;
    @Schema(description = "WGS84坐标系经度")
    private double longitudeWgs84;
    @Schema(description = "WGS84坐标系纬度")
    private double latitudeWgs84;
    @Schema(description = "子设备数")
    private int subCount;
    @Schema(description = "流唯一编号，存在表示正在直播")
    private String  streamId;
    @Schema(description = "是否含有音频")
    private boolean hasAudio;
    @Schema(description = "标记通道的类型，0->国标通道 1->直播流通道 2->业务分组/虚拟组织/行政区划")
    private int channelType;
    @Schema(description = "业务分组")
    private String businessGroupId;
    @Schema(description = "GPS的更新时间")
    private String gpsTime;
}
